#pragma once
#include "ExceptionBase.h"

namespace Exception 
{
	class EXCEPTION_API IOException :
		public Exception::ExceptionBase
	{
	public:
		IOException(void);
		virtual ~IOException(void);
	};

	class EXCEPTION_API IODriveException :
		public Exception::IOException
	{
	public:
		IODriveException (void);
		IODriveException (const wchar_t* msg);
		virtual ~IODriveException (void);
	private:
		wchar_t* m_exMessage;
	};

	class EXCEPTION_API IOFileException :
		public IOException
	{
	public:
		IOFileException  (void);
		IOFileException(const wchar_t* msg)
		{
			m_msg = msg;
		}

		virtual ~IOFileException (void);
	};

}
